package com.ssrs.batch.core.callback;

import com.ssrs.batch.core.exception.BatchServiceException;
import org.springframework.batch.core.ExitStatus;

/**
 * 回调函数
 *
 * @author ssrs
 */
public interface BatchJobCallback {
    /**
     * 批处理运行之前
     */
    void beforeSetup();

    /**
     * 批处理运行时
     */
    void setup();

    /**
     * 批处理运行后
     */
    void finished(ExitStatus status, String... messages);

    /**
     * 批处理运行发送异常
     */
    void exception(BatchServiceException e);
}
